package com.todo.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.todo.dto.Result;
import com.todo.dto.TeamMemberChangeDTO;
import com.todo.entity.Team;

public interface ITeamService extends IService<Team> {

    /**
     * 创建团队
     * @param teamName
     * @return
     */
    Result createTeam(String teamName);

    /**
     * 通过需要邀请的uid以及团队tid，将用户添加入群（无需本人通过）
     * @param uid
     * @param tid
     * @return
     */
    Result inviteMember(String uid, String tid);

    /**
     *
     * @param uid
     * @param tid
     * @return
     */
    Result delMember(String uid, String tid);

    /**
     * 根据团队tid删除团队
     * @param tid
     * @return
     */
    Result dropTeam(String tid);

    /**
     * 根据tid获取团队信息
     * @param tid
     * @return
     */
    Result getTeam(String tid);

    /**
     * 拆寻团队详细信息
     * @param tid
     * @return
     */
    Result getTeamDetail(String tid);

    /**
     * 根据团队tid查询团队成员列表
     * @param tid
     * @return
     */
    Result queryTeamMemberList(String tid);

    /**
     * 修改团队成员权限
     * @param teamMemberChangeDTO
     * @return
     */
    Result changePrivilege(TeamMemberChangeDTO teamMemberChangeDTO);
}
